home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / syslinux / com32 / include / sys / io.h < prev    next >
C/C++ Source or Header  |  2005-10-29  |  758b  |  43 lines

  1. #ifndef _SYS_IO_H
  2. #define _SYS_IO_H
  3.  
  4. #include <inttypes.h>
  5.  
  6. static inline uint8_t inb(uint16_t p)
  7. {
  8.   uint8_t v;
  9.   asm volatile("inb %1,%0" : "=a" (v) : "Nd" (p));
  10.   return v;
  11. }
  12.  
  13. static inline uint16_t inw(uint16_t p)
  14. {
  15.   uint16_t v;
  16.   asm volatile("inw %1,%0" : "=a" (v) : "Nd" (p));
  17.   return v;
  18. }
  19.  
  20. static inline uint32_t inl(uint16_t p)
  21. {
  22.   uint32_t v;
  23.   asm volatile("inl %1,%0" : "=a" (v) : "Nd" (p));
  24.   return v;
  25. }
  26.  
  27. static inline void outb(uint8_t v, uint16_t p)
  28. {
  29.   asm volatile("outb %0,%1" : : "a" (v), "Nd" (p));
  30. }
  31.  
  32. static inline void outw(uint16_t v, uint16_t p)
  33. {
  34.   asm volatile("outw %0,%1" : : "a" (v), "Nd" (p));
  35. }
  36.  
  37. static inline void outl(uint32_t v, uint16_t p)
  38. {
  39.   asm volatile("outl %0,%1" : : "a" (v), "Nd" (p));
  40. }
  41.  
  42. #endif /* _SYS_IO_H */
  43.